import { createSSRApp } from 'vue';
import * as Pinia from 'pinia';
import tmui from './tmui';
import App from './App.vue';
import store from './store';
// switchTab拦截器
import '@/common/interceptor';
/**
 * v-auth 权限指令
 */
import { setupPermissionDirective } from '@/directives/permissions';
import DictTag from '@/components/DictTag/index.vue';
/**
 * 一堆的bug 是否开跟随主题切换无法持久化  每次都读取的true  没有从本地存储读取
 * 在这里修复  默认为true
 */
import * as u from '@/tmui/tool/function/util';
const autoDark = u.getCookie('setTmVuetifyAutoDark') ?? true;

const defaultTmuiConfig: Tmui.tmuiConfig = {
  shareDisable: false,
  autoDark,
  themeConfig: {
    dark: {
      // dark模式下背景颜色  默认的颜色太深了
      bodyColor: '#222222',
    },
  },
};

export function createApp() {
  const app = createSSRApp(App);
  app.use(store);
  app.use(tmui, defaultTmuiConfig);
  app.component('DictTag', DictTag);
  setupPermissionDirective(app);
  return {
    app,
    Pinia,
  };
}

let main = plus.android.runtimeMainActivity();
//为了防止快速点按返回键导致程序退出重写quit方法改为隐藏至后台  
plus.runtime.quit = function(){
  main.moveTaskToBack(false);
};
//重写toast方法如果内容为 ‘再按一次退出应用’ 就隐藏应用，其他正常toast  
plus.nativeUI.toast = (function(str){
  console.log(str);
  if(str == '再按一次退出应用'){
    main.moveTaskToBack(false);
    return false;
  }else{
    uni.showToast({
      title:str,
      icon:'none',
    })
  }
});
